#ifndef _PIC_OPERATION_H
#define _PIC_OPERATION_H

#include <file.h>

typedef struct PixelDatas{
    int iWidth; //宽度，一行几个像素
    int iHeight;    //高度，一列有几个像素
    int iBpp;   //一个像素用多少位表示
    int iLineBytes; //一行数据有多少字节
    int iTotalBytes;    //总共的字节数
    unsigned char *aucPixelDatas;   //存储像素数据的地方
}T_PixelDatas, *PT_PixelDatas;

typedef struct PicFileParser
{
    /* data */
    char *name; //图片文件解析模块的名字
    int (*isSupport)(PT_FileMap ptFileMap); //是否支持某文件
    int (*GetPixelDatas)(PT_FileMap ptFileMap, PT_PixelDatas ptPixelDatas);   //从文件种解析出图像的像素和数据
    int (*FreePixelDatas)(PT_PixelDatas ptPixelDatas);  //释放图像所占用的内存数据
    struct PicFileParser *ptNext;   
}T_PicFileParser, *PT_PicFileParser;

#endif /* _PIF_OPERATION_H */